********************++++++++++++++++++++++++++++++*****+++++*)++++**))((*++++(()++)(``a``(*+**a`))`a``aabaa`(*)(ba`abbabbbcbba((cbbaabccbcccbccbaabccbbcccccccccccbaabdcccdcccccdcccbcccbcccccccccdccdcccccccccdcccdccccccccccccccccccccccccccccddcccc